Teaching Functional and Logic Programming with a Single Computational Model
نویسنده
چکیده
Functional and logic programming are often taught in different courses so that students often do not understand the relationships between these declarative programming paradigms. This is mainly due to the different underlying computation models—deterministic reduction and lazy evaluation in functional languages, and non-deterministic search in logic languages. We show in this paper that this need not be the case. Taking into account recent developments in the integration of functional and logic programming, it is possible to teach the ideas of modern functional languages like Haskell and logic programming on the basis of a single computation model. From this point of view, logic programming is considered as an extension of functional programming where ground expressions are extended to contain also free variables. We describe this computation model, the structure of a course based on it, and draw some conclusions from the experiences with such a course.
منابع مشابه
A Goal Programming Model for Single Vehicle Routing Problem with Multiple Routes
The single vehicle routing problem with multiple routes is a variant of the vehicle routing problem where the vehicle can be dispatched to several routes during its workday to serve a number of customers. In this paper we propose a goal programming model for multi-objective single vehicle routing problem with time windows and multiple routes. To solve the model, we present a heuristic method wh...
متن کاملA Mathematical Programming Model and Genetic Algorithm for a Multi-Product Single Machine Scheduling Problem with Rework Processes
In this paper, a multi-product single machine scheduling problem with the possibility of producing defected jobs, is considered. We concern rework in the scheduling environment and propose a mixed-integer programming (MIP) model for the problem. Based on the philosophy of just-in-time production, minimization of the sum of earliness and tardiness costs is taken into account as the objective fu...
متن کاملSolving Single Machine Sequencing to Minimize Maximum Lateness Problem Using Mixed Integer Programming
Despite existing various integer programming for sequencing problems, there is not enoughinformation about practical values of the models. This paper considers the problem of minimizing maximumlateness with release dates and presents four different mixed integer programming (MIP) models to solve thisproblem. These models have been formulated for the classical single machine problem, namely sequ...
متن کاملTwo-stage stochastic programming model for capacitated complete star p-hub network with different fare classes of customers
In this paper, a stochastic programming approach is applied to the airline network revenue management problem. The airline network with the arc capacitated single hub location problem based on complete–star p-hub network is considered. We try to maximize the profit of the transportation company by choosing the best hub locations and network topology, applying revenue management techniques to al...
متن کاملOn the Relation Between a Rewriting Computational Model for Functional Logic Languages and Or-Parallelism
The programming language Escher introduced a rewriting computational model for functional logic languages. In this model, computation is regarded as the application of successive rewrite steps to a goal expression until the expression reaches a normal form. This is in contrast to the common operational basis of logic programming , namely the depth-rst traversal of a search tree, which is usuall...
متن کامل